//package com.cictec.middleware.feign.distribute;
//
//import java.util.Date;
//
//import org.springframework.cloud.netflix.feign.FeignClient;
//import org.springframework.stereotype.Component;
//import org.springframework.web.bind.annotation.RequestMapping;
//import org.springframework.web.bind.annotation.RequestParam;
//
//import com.cictec.middleware.commons.utils.Result;
//import com.cictec.middleware.core.entity.Device;
//
///**
// * 中间件对外业务处理接口
// * 
// * @author Administrator
// *
// */
//@Component
//@FeignClient(name = "middleware-distribute")
//public interface MiddlewareBusinessService {
//
//	/**
//	 * 设备连接，通过设备号或者设备序列号
//	 * 
//	 * @param serialNumber
//	 * @return data JSONObject
//	 */
//	@RequestMapping(value = "/getDeviceBySerialNumber")
//	public Device getDeviceBySerialNumber(String serialNumber);
//
//	/**
//	 * 设备连接，通过设备号或者设备序列号
//	 * 
//	 * @param devCode
//	 * @return data JSONObject
//	 */
//	@RequestMapping(value = "/getDeviceByDevCode")
//	public Device getDeviceByDevCode(String devCode);
//
//	@RequestMapping(value = "/deviceConnectByDevcode")
//	public Result deviceConnectByDevcode(String devCode);
//
//	@RequestMapping(value = "/deviceConnectBySerialNumber")
//	public Result deviceConnectBySerialNumber(String serialNumber);
//
//
//	@RequestMapping(value = "/deviceDisConnect")
//	public Result deviceDisConnect(String devCode);
//
//	@RequestMapping(value = "/getStation")
//	public Result getStation(@RequestParam("lineId") String lineId, @RequestParam("lineType") String lineType,
//			@RequestParam("seq") String seq);
//
//	/**
//	 * 设备上传 司机签到
//	 * 
//	 * @param devCode
//	 *            设备编号
//	 * @param icCardNumber
//	 *            IC卡号
//	 * @param signTime
//	 *            签到时间
//	 * @return
//	 */
//	@RequestMapping(value = "/driverSign")
//	public Result driverSign(@RequestParam("devCode") String devCode, @RequestParam("icCardNumber") String icCardNumber,
//			@RequestParam("signTime") Date signTime);
//
//	/**
//	 * 设备上传 超速报警处理
//	 * 
//	 * @param devCode
//	 *            设备编号
//	 * @param isStart
//	 *            true 报警开始，false 报警结束
//	 * @param lat
//	 *            纬度
//	 * @param lng
//	 *            经度
//	 * @param speed
//	 *            速度
//	 * @param createTime
//	 *            报警创建时间
//	 * @param warnDuration
//	 *            持续时长（报警结束时候使用）
//	 * @return
//	 */
//	@RequestMapping(value = "/uploadOverSpeedWarn")
//	public Result uploadOverSpeedWarn(@RequestParam("devCode") String devCode, @RequestParam("isStart") boolean isStart,
//			@RequestParam("lat") double lat, @RequestParam("lng") double lng, @RequestParam("speed") int speed,
//			@RequestParam("createTime") Date createTime, @RequestParam("warnDuration") Integer warnDuration);
//
//	/**
//	 * 设备上传 手动报警处理
//	 * 
//	 * @return
//	 */
//	@RequestMapping(value = "/uploadManualWarn")
//	public Result uploadManualWarn(@RequestParam("devCode") String devCode, @RequestParam("lat") double lat,
//			@RequestParam("lng") double lng, @RequestParam("speed") int speed,
//			@RequestParam("createTime") Date createTime);
//
//	/**
//	 * 设备上传 调度申请信息处理
//	 * 
//	 * @return
//	 */
//	@RequestMapping(value = "/uploadDispatchApply")
//	public Result uploadDispatchApply(@RequestParam("devCode") String devCode, @RequestParam("applyType") int applyType,
//			@RequestParam("createTime") Date createTime);
//
//	/**
//	 * can总线数据上传
//	 * 
//	 * @return
//	 */
//	@RequestMapping(value = "/uploadBusCan")
//	public Result uploadBusCan(@RequestParam("devCode") final String devCode,
//			@RequestParam("jsonStr") final String jsonStr);
//
//}
